1. Field
This application relates generally to a task management system for maintaining a current task hierarchy for a user participating in multiple project teams and, more specifically, to determining a task hierarchy for a list of tasks based on a score for each task in the list and presenting the task hierarchy to the user.
2. Description of the Related Art
In general, there is a need to provide a computer-based system that allows a user to organize and execute a list of tasks that involve a group of people belonging to different project teams. In general, a team leader or project manager uses a computer-based system (e.g., project management software) to identify project tasks, assign resources to those tasks, and develop a task execution sequence. Traditional computer-based systems memorialize a sequence of project tasks as determined and entered by the team leader. Typically, the project tasks are arranged in a sequence according to their relative priority within a given project. Team members can then follow the project sequence as part of a project plan presented in a chart or other visual project summary.
One drawback to traditional computer-based systems is that it is difficult for individuals to manage priorities for tasks assigned by multiple projects. For example, if an individual has responsibilities for two different projects of nearly equal importance, it may not be clear in which order the tasks should be performed. Traditionally, one project takes priority over the other for a period of time or until the project is complete. Additionally, using traditional computer-based systems, it's not possible to prioritize an individual's personal or private tasks with respect to the individual's responsibilities as part of a project team.
Another drawback to traditional computer based systems is that the project sequence is essentially fixed after the project plan is entered by the team leader. In general, tasks are sequenced according to interdependencies entered by the team leader and, without further input, the task order remains static. Using traditional computer-based systems, it may be possible to re-plan or re-prioritize the project to change the sequence of tasks, but this typically requires significant time and effort on the part of the team leader who must manually determine the new sequence. As a result, projects are not typically re-planned unless absolutely necessary and, therefore, rarely reflect the most current state of a project or order of priority.
Another drawback to traditional computer-based systems is that the project plan is primarily driven by the team leader, who may be in charge of keeping track of progress, updating the project plan, and notifying the team members of the impact to the overall schedule. Such systems rely heavily on the diligence and judgment of the team leader, and the system output may vary depending on the quality and experience level of the team leader. Additionally, focusing responsibilities on a single person can create a bottleneck in the flow of information, delaying the communication of project updates to individual team members. Also, focusing responsibilities on the team leader reduces the impact individual team members have on the project plan.